哪種處理器最適合您的業(yè)務(wù)需求?GPU和CPU如何選擇?您需要 GPU 處理能力,還是 CPU 能滿足您高度復(fù)雜的計(jì)算任務(wù)?如果您正在考慮購(gòu)買(mǎi)或升級(jí)您的服務(wù)器,您應(yīng)該決定什么最適合您;GPU 或 CPU。本文將介紹 GPU 和 CPU 在速度和性能方面的差異,以幫助您確定兩者之間的最佳選擇。
當(dāng)我們開(kāi)始討論 GPU 與 CPU 時(shí),我們可以從一開(kāi)始就告訴您一件事;與 GPU 相比,CPU 的每核成本較高。您可以以大約相同的投資擁有十幾個(gè) CPU 內(nèi)核或幾千個(gè) GPU。事實(shí)上,500 強(qiáng)超級(jí)計(jì)算機(jī)的大部分新處理能力來(lái)自 GPU。那么,GPU和CPU有什么區(qū)別呢?讓我們仔細(xì)看看。
什么是中央處理器(CPU)?
對(duì)于初學(xué)者來(lái)說(shuō),CPU 是中央處理器的首字母縮寫(xiě)。CPU是根據(jù)邏輯、輸出、輸入、控制、算術(shù)和算法等操作執(zhí)行程序給出的指令的微處理器。專用服務(wù)器使用兩個(gè)或四個(gè)物理 CPU 來(lái)執(zhí)行操作系統(tǒng)的基本操作。另一方面,云 VPS 服務(wù)器帶有從物理芯片分配的虛擬內(nèi)核。
通常,如果您的任務(wù)需要更快的處理速度,您可以為系統(tǒng)添加更多的 CPU 能力,并為您希望更快執(zhí)行的任務(wù)分配更多的處理器時(shí)鐘周期。大多數(shù)基本服務(wù)器運(yùn)行在 2 到 8 個(gè)內(nèi)核上。強(qiáng)大的服務(wù)器擁有 32、64 甚至更多的處理核心。在速度方面,CPU 內(nèi)核擁有比 GPU 更高的時(shí)鐘速度,通常為 2 至 4 GHz。
什么是圖形處理單元(GPU)?
GPU 代表圖形處理單元。GPU 是專為在顯卡上使用而設(shè)計(jì)的處理器芯片。不用于在計(jì)算機(jī)屏幕上繪圖的 GPU,例如服務(wù)器中的 GPU,通常稱為通用 GPU (GPGPU)。雖然 GPU 的時(shí)鐘速度低于現(xiàn)代 CPU(通常為 500 到 800 MHz),但每個(gè) GPU 芯片上的內(nèi)核數(shù)量要密集得多。事實(shí)上,這是顯卡和 CPU 之間最顯著的區(qū)別之一。連鎖反應(yīng)是 GPU 可以同時(shí)執(zhí)行許多基本任務(wù)。
最初,GPU 旨在同時(shí)計(jì)算數(shù)十萬(wàn)個(gè)多邊形的位置,并確定反射以快速為視頻游戲等應(yīng)用程序渲染圖像。但是,您現(xiàn)在可以使用 GPU 來(lái)加速涉及大量數(shù)據(jù)的計(jì)算。標(biāo)準(zhǔn)顯卡可以承載 700 到 1,000 個(gè)處理核心。現(xiàn)代、更強(qiáng)大的顯卡可以擁有超過(guò) 3,000 個(gè)處理器內(nèi)核。雖然 GPU 核心速度逐漸提高,但仍低于 CPU。最新顯卡的核心速度約為每核心 1.2 GHz。
GPU可以代替CPU嗎?
首先,重要的是要了解 CPU 與 GPU 協(xié)同工作以提高數(shù)據(jù)吞吐量和應(yīng)用程序中同時(shí)計(jì)算的數(shù)量。也就是說(shuō),GPU 不能完全取代 CPU。相反,當(dāng)主程序繼續(xù)在 CPU 上運(yùn)行時(shí),它通過(guò)在應(yīng)用程序中同時(shí)運(yùn)行重復(fù)計(jì)算來(lái)補(bǔ)充 CPU 功能。您可能希望將 CPU 視為計(jì)算機(jī)系統(tǒng)或服務(wù)器的“大腦”,在 GPU 執(zhí)行更窄、更專業(yè)的任務(wù)(通常是數(shù)學(xué)任務(wù))時(shí)協(xié)調(diào)各種通用任務(wù)。通過(guò)利用并行性的力量,GPU 可以在相同的時(shí)間內(nèi)完成比 CPU 更多的任務(wù)。
那么,為什么不在 GPU 上運(yùn)行整個(gè)系統(tǒng)呢?
當(dāng)然,GPU 比 CPU 快。但是,另一方面,它們不像 CPU 那樣通用。一個(gè)主要限制是 GPU 只能同時(shí)執(zhí)行相同的任務(wù),這種機(jī)制稱為單指令多數(shù)據(jù) (SIMD)。因此,假設(shè)您正在執(zhí)行數(shù)千個(gè)單獨(dú)的并行計(jì)算,例如破解密碼哈希。在這種情況下,GPU 可以通過(guò)將每個(gè)計(jì)算作為具有精確指令的單個(gè)線程執(zhí)行而出色地工作。
但是,GPU 對(duì)于內(nèi)核操作(例如打開(kāi)新索引指針或?qū)⑽募?xiě)入磁盤(pán))會(huì)相對(duì)較慢。由于速度和內(nèi)存較低,GPU 會(huì)帶來(lái)更多的操作延遲。另一方面,CPU 具有較低的傳輸和反應(yīng)時(shí)間(這更好),因?yàn)樗鼈冡槍?duì)快速、單一的指令進(jìn)行了調(diào)整。GPU 專為更大的帶寬而設(shè)計(jì),這解釋了為什么它們是并發(fā)處理的理想選擇。CPU 專為快速個(gè)人計(jì)算而設(shè)計(jì);這就是為什么如果您生成單個(gè)密碼哈希而不是破解密碼哈希,那么您最好使用 CPU。
哪些應(yīng)用程序最適合在 GPU 上運(yùn)行?
GPU 在其預(yù)期的原始用途中旨在在屏幕上顯示圖形。那么,您的服務(wù)器上需要顯卡嗎?這得看情況。雖然您的服務(wù)器沒(méi)有監(jiān)視器,但您可以利用 GPU 執(zhí)行除在屏幕上繪圖之外的任務(wù)。
GPU擅長(zhǎng)的一些重復(fù)性和高度并發(fā)的計(jì)算任務(wù)包括:
- 機(jī)器學(xué)習(xí)
- 風(fēng)險(xiǎn)建模
- 財(cái)務(wù)模擬
- 結(jié)構(gòu)分析
- 氣候模擬
GPU 最流行的用途之一是挖掘比特幣等加密貨幣。由于 GPU 非常適合每秒執(zhí)行許多浮點(diǎn)運(yùn)算 (FLOPS),因此它們非常適合有效挖掘。盡管如此,由于現(xiàn)場(chǎng)可編程網(wǎng)格陣列 (FPGA) 和隨后的專用集成電路 (ASIC) 等技術(shù)的出現(xiàn),GPU 不再被大規(guī)模用于挖掘加密貨幣。
哪些任務(wù)更適合在 CPU 上運(yùn)行?
CPU 更擅長(zhǎng)執(zhí)行具有大量難以同時(shí)運(yùn)行的算法的任務(wù)。這些包括:
- 不易并行化的實(shí)時(shí)推理算法
- 用于訓(xùn)練和干擾的大尺寸數(shù)據(jù)樣本,例如 3D 數(shù)據(jù)
- 依賴順序數(shù)據(jù)的循環(huán)神經(jīng)網(wǎng)絡(luò)
- 需要更大內(nèi)存來(lái)嵌入層的訓(xùn)練和推理應(yīng)用程序
由于 CPU 專門(mén)設(shè)計(jì)用于允許系統(tǒng)計(jì)劃和執(zhí)行內(nèi)核的組件和時(shí)鐘速度的調(diào)度,因此它們最適合快速處理單個(gè)復(fù)雜的數(shù)學(xué)問(wèn)題。
GPU 與 CPU——它們可以一起工作嗎?
當(dāng)然,您的系統(tǒng)沒(méi)有允許您將所有計(jì)算的 10% 定向到 GPU 的開(kāi)關(guān)。在并發(fā)處理情況下,您可能會(huì)將命令卸載到 GPU 進(jìn)行計(jì)算,您必須將指令硬編碼到執(zhí)行工作所需的程序中。然而,像 NVidia 這樣的制造商和開(kāi)放資源開(kāi)發(fā)人員提供了用于 Python 或 C++ 等常見(jiàn)編碼語(yǔ)言的免費(fèi)庫(kù),允許開(kāi)發(fā)人員在可用的地方利用 GPU 處理。
GPU 與 CPU——如何為工作選擇正確的服務(wù)器?
正如我們所見(jiàn),GPU 和 CPU 具有不同的處理能力。決定是否將計(jì)算基礎(chǔ)設(shè)施錨定在 GPU 和/或 CPU 上主要取決于您預(yù)期的工作負(fù)載和計(jì)算環(huán)境。在數(shù)據(jù)中心,充分利用 GPU 和 CPU 至關(guān)重要。請(qǐng)記住,系統(tǒng)的整體性能很大程度上取決于硬件、軟件和開(kāi)發(fā)人員生態(tài)系統(tǒng)的完整性。
您的工作負(fù)載需要各種技術(shù),因此利用 GPU 和 CPU 可以將專用和通用處理器整合到您的服務(wù)器和設(shè)備中,幫助您在節(jié)省資金的同時(shí)實(shí)現(xiàn)更好的性能和效率。畢竟,您的成功取決于將正確的處理器與您的應(yīng)用程序相匹配的能力。